home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / mozilla-firefox / idl / nsIDOMSVGPathElement.idl < prev    next >
Text File  |  2006-05-08  |  8KB  |  143 lines

  1. /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
  2. /* ***** BEGIN LICENSE BLOCK *****
  3.  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
  4.  *
  5.  * The contents of this file are subject to the Mozilla Public License Version
  6.  * 1.1 (the "License"); you may not use this file except in compliance with
  7.  * the License. You may obtain a copy of the License at
  8.  * http://www.mozilla.org/MPL/
  9.  *
  10.  * Software distributed under the License is distributed on an "AS IS" basis,
  11.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  12.  * for the specific language governing rights and limitations under the
  13.  * License.
  14.  *
  15.  * The Original Code is the Mozilla SVG project.
  16.  *
  17.  * The Initial Developer of the Original Code is
  18.  * Crocodile Clips Ltd..
  19.  * Portions created by the Initial Developer are Copyright (C) 2001
  20.  * the Initial Developer. All Rights Reserved.
  21.  *
  22.  * Contributor(s):
  23.  *   Alex Fritze <alex.fritze@crocodile-clips.com> (original author)
  24.  *
  25.  * Alternatively, the contents of this file may be used under the terms of
  26.  * either of the GNU General Public License Version 2 or later (the "GPL"),
  27.  * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  28.  * in which case the provisions of the GPL or the LGPL are applicable instead
  29.  * of those above. If you wish to allow use of your version of this file only
  30.  * under the terms of either the GPL or the LGPL, and not to allow others to
  31.  * use your version of this file under the terms of the MPL, indicate your
  32.  * decision by deleting the provisions above and replace them with the notice
  33.  * and other provisions required by the GPL or the LGPL. If you do not delete
  34.  * the provisions above, a recipient may use your version of this file under
  35.  * the terms of any one of the MPL, the GPL or the LGPL.
  36.  *
  37.  * ***** END LICENSE BLOCK ***** */
  38.  
  39. #include "nsIDOMSVGElement.idl"
  40.  
  41. interface nsIDOMSVGAnimatedNumber;
  42. interface nsIDOMSVGPoint;
  43. interface nsIDOMSVGPathSegClosePath;
  44. interface nsIDOMSVGPathSegMovetoAbs;
  45. interface nsIDOMSVGPathSegMovetoRel;
  46. interface nsIDOMSVGPathSegLinetoAbs;
  47. interface nsIDOMSVGPathSegLinetoRel;
  48. interface nsIDOMSVGPathSegCurvetoCubicAbs;
  49. interface nsIDOMSVGPathSegCurvetoCubicRel;
  50. interface nsIDOMSVGPathSegCurvetoQuadraticAbs;
  51. interface nsIDOMSVGPathSegCurvetoQuadraticRel;
  52. interface nsIDOMSVGPathSegArcAbs;
  53. interface nsIDOMSVGPathSegArcRel;
  54. interface nsIDOMSVGPathSegLinetoHorizontalAbs;
  55. interface nsIDOMSVGPathSegLinetoHorizontalRel;
  56. interface nsIDOMSVGPathSegLinetoVerticalAbs;
  57. interface nsIDOMSVGPathSegLinetoVerticalRel;
  58. interface nsIDOMSVGPathSegCurvetoCubicSmoothAbs;
  59. interface nsIDOMSVGPathSegCurvetoCubicSmoothRel;
  60. interface nsIDOMSVGPathSegCurvetoQuadraticSmoothAbs;
  61. interface nsIDOMSVGPathSegCurvetoQuadraticSmoothRel;
  62.  
  63. [scriptable, uuid(2b19e692-3338-440f-a998-3cb1e8474999)]
  64. interface nsIDOMSVGPathElement
  65.   : nsIDOMSVGElement
  66. /*
  67.         The SVG DOM makes use of multiple interface inheritance.
  68.         Since XPCOM only supports single interface inheritance,
  69.         the best thing that we can do is to promise that whenever
  70.         an object implements _this_ interface it will also
  71.         implement the following interfaces. (We then have to QI to
  72.         hop between them.)
  73.         
  74.     nsIDOMSVGTests,
  75.     nsIDOMSVGLangSpace,
  76.     nsIDOMSVGExternalResourcesRequired,
  77.     nsIDOMSVGStylable,
  78.     nsIDOMSVGTransformable,
  79.     events::nsIDOMEventTarget,
  80.     nsIDOMSVGAnimatedPathData
  81. */
  82.   readonly attribute nsIDOMSVGAnimatedNumber pathLength;
  83.   
  84.   float          getTotalLength();
  85.   nsIDOMSVGPoint getPointAtLength(in float distance);
  86.   unsigned long  getPathSegAtLength(in float distance);
  87.  
  88.   nsIDOMSVGPathSegClosePath createSVGPathSegClosePath();
  89.   nsIDOMSVGPathSegMovetoAbs createSVGPathSegMovetoAbs(in float x, in float y);
  90.   nsIDOMSVGPathSegMovetoRel createSVGPathSegMovetoRel(in float x, in float y);
  91.   nsIDOMSVGPathSegLinetoAbs createSVGPathSegLinetoAbs(in float x, in float y);
  92.   nsIDOMSVGPathSegLinetoRel createSVGPathSegLinetoRel(in float x, in float y);
  93.  
  94.   nsIDOMSVGPathSegCurvetoCubicAbs     createSVGPathSegCurvetoCubicAbs(in float x,
  95.                                                                       in float y,
  96.                                                                       in float x1,
  97.                                                                       in float y1,
  98.                                                                       in float x2,
  99.                                                                       in float y2);
  100.   nsIDOMSVGPathSegCurvetoCubicRel     createSVGPathSegCurvetoCubicRel(in float x,
  101.                                                                       in float y,
  102.                                                                       in float x1,
  103.                                                                       in float y1,
  104.                                                                       in float x2,
  105.                                                                       in float y2);
  106.   nsIDOMSVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs(in float x,
  107.                                                                           in float y,
  108.                                                                           in float x1,
  109.                                                                           in float y1);
  110.   nsIDOMSVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel(in float x,
  111.                                                                           in float y,
  112.                                                                           in float x1,
  113.                                                                           in float y1);
  114.  
  115.   nsIDOMSVGPathSegArcAbs createSVGPathSegArcAbs(in float x, in float y, in float r1,
  116.                                                 in float r2, in float angle,
  117.                                                 in boolean largeArcFlag,
  118.                                                 in boolean sweepFlag);
  119.   nsIDOMSVGPathSegArcRel createSVGPathSegArcRel(in float x, in float y, in float r1,
  120.                                                 in float r2, in float angle,
  121.                                                 in boolean largeArcFlag,
  122.                                                 in boolean sweepFlag);
  123.  
  124.   nsIDOMSVGPathSegLinetoHorizontalAbs createSVGPathSegLinetoHorizontalAbs(in float x);
  125.   nsIDOMSVGPathSegLinetoHorizontalRel createSVGPathSegLinetoHorizontalRel(in float x);
  126.   nsIDOMSVGPathSegLinetoVerticalAbs   createSVGPathSegLinetoVerticalAbs(in float y);
  127.   nsIDOMSVGPathSegLinetoVerticalRel   createSVGPathSegLinetoVerticalRel(in float y);
  128.  
  129.   nsIDOMSVGPathSegCurvetoCubicSmoothAbs     createSVGPathSegCurvetoCubicSmoothAbs(in float x,
  130.                                                                                   in float y,
  131.                                                                                   in float x2,
  132.                                                                                   in float y2);
  133.   nsIDOMSVGPathSegCurvetoCubicSmoothRel     createSVGPathSegCurvetoCubicSmoothRel(in float x,
  134.                                                                                   in float y,
  135.                                                                                   in float x2,
  136.                                                                                   in float y2);
  137.   nsIDOMSVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs(in float x,
  138.                                                                                       in float y);
  139.   nsIDOMSVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel(in float x,
  140.                                                                                       in float y);
  141. };
  142.